Meteor অ্যাপ্লিকেশন তৈরি করার সময়, এটি একটি নির্দিষ্ট ফোল্ডার স্ট্রাকচার অনুসরণ করে, যা ডেভেলপারদের জন্য অ্যাপ্লিকেশন ম্যানেজমেন্ট এবং কনফিগারেশন সহজ করে তোলে। সাধারণত, একটি Meteor অ্যাপ্লিকেশন নিম্নলিখিত ফোল্ডার এবং ফাইলগুলির সমন্বয়ে গঠিত থাকে:
1. client/ ফোল্ডার
এই ফোল্ডারটি ক্লায়েন্ট সাইড কোড ধারণ করে। এখানে থাকা সমস্ত ফাইল ব্যবহারকারীর ব্রাউজারে চলবে। এটি সাধারণত HTML, CSS, এবং JavaScript ফাইল ধারণ করে।
- HTML ফাইল: অ্যাপ্লিকেশনটির UI এর জন্য HTML টেমপ্লেটগুলি এখানে থাকবে।
- CSS ফাইল: স্টাইলশিট (CSS) ফাইলগুলি অ্যাপ্লিকেশনের ডিজাইন এবং লেআউট কাস্টমাইজ করতে ব্যবহৃত হয়।
- JavaScript ফাইল: অ্যাপ্লিকেশনের ক্লায়েন্ট সাইড স্ক্রিপ্ট এবং ফাংশনগুলি এখানে থাকে।
উদাহরণ:
client/
main.html
main.js
main.css
2. server/ ফোল্ডার
এই ফোল্ডারটি সার্ভার সাইড কোড ধারণ করে। এখানে থাকা সমস্ত ফাইল Node.js পরিবেশে চলবে এবং সার্ভার সাইডের লগিক, API রাউটিং, এবং ডেটাবেস পরিচালনা করবে।
- JavaScript ফাইল: সার্ভারের সমস্ত স্ক্রিপ্ট, যেমন ডেটাবেস সংযোগ, API রাউটিং, এবং অন্যান্য সার্ভার লজিক থাকে এখানে।
উদাহরণ:
server/
main.js
3. imports/ ফোল্ডার
এই ফোল্ডারটি অ্যাপ্লিকেশনের শেয়ারড কোড ধারণ করে, যা ক্লায়েন্ট এবং সার্ভার উভয় সাইডেই ব্যবহার করা যেতে পারে। এই ফোল্ডারের মধ্যে থাকা ফাইলগুলি অ্যাপ্লিকেশনের বিভিন্ন অংশের জন্য কোড পুনঃব্যবহারযোগ্য এবং ইমপোর্টযোগ্য হয়।
- JavaScript ফাইল: এখানে থাকা কোড ক্লায়েন্ট এবং সার্ভার উভয়ের জন্য ইমপোর্ট করা যাবে।
উদাহরণ:
imports/
api/
todos/
methods.js
publications.js
ui/
App.js
4. public/ ফোল্ডার
এই ফোল্ডারটি অ্যাপ্লিকেশনের স্ট্যাটিক ফাইল ধারণ করে, যেগুলি সরাসরি ক্লায়েন্ট সাইডে সেবা প্রদান করে। এখানে সাধারণত ইমেজ, ফন্ট, পিডিএফ বা অন্যান্য স্ট্যাটিক কনটেন্ট থাকে।
উদাহরণ:
public/
images/
logo.png
5. node_modules/ ফোল্ডার
এটি Node.js প্যাকেজ গুলি ধারণ করে যা Meteor অ্যাপ্লিকেশন চালাতে প্রয়োজন। এই ফোল্ডারটি সাধারণত npm বা meteor add কমান্ড দ্বারা তৈরি হয় এবং এই ফোল্ডারটি অ্যাপ্লিকেশন চালানোর জন্য অপরিহার্য।
6. packages/ ফোল্ডার
এই ফোল্ডারটি একটি Meteor প্যাকেজ ধারণ করে, যদি আপনি আপনার অ্যাপ্লিকেশনের জন্য কাস্টম প্যাকেজ তৈরি করেন। এটি একটি বিশেষ ধরনের ফোল্ডার যা সাধারণত অ্যাপ্লিকেশনের মডুলার কোডকে পৃথক করে।
7. tests/ ফোল্ডার
এই ফোল্ডারটি আপনার অ্যাপ্লিকেশনের টেস্ট কোড ধারণ করে। আপনি এই ফোল্ডারটি ব্যবহার করে Meteor অ্যাপ্লিকেশনটির বিভিন্ন অংশের জন্য ইউনিট টেস্ট বা ইন্টিগ্রেশন টেস্ট তৈরি করতে পারেন।
8. settings.json ফাইল
এই ফাইলটি অ্যাপ্লিকেশনের কনফিগারেশন ফাইল হিসেবে কাজ করে। এখানে পরিবেশ ভেরিয়েবল এবং অন্যান্য কনফিগারেশন সেটিংস থাকতে পারে, যা আপনার অ্যাপ্লিকেশন চলাকালীন ব্যবহৃত হয়।
9. package.json ফাইল
এই ফাইলটি অ্যাপ্লিকেশনের নির্ভরশীলতা এবং স্ক্রিপ্ট ধারণ করে। এটি npm প্যাকেজের জন্য নির্ধারিত ফাইল, যা অ্যাপ্লিকেশনের বাইরের প্যাকেজ গুলি এবং স্ক্রিপ্ট পরিচালনা করে।
ফোল্ডার স্ট্রাকচারের সাধারণ উদাহরণ
my-app/
client/
main.html
main.js
main.css
server/
main.js
imports/
api/
todos/
methods.js
publications.js
ui/
App.js
public/
images/
logo.png
node_modules/
tests/
package.json
settings.json
সারাংশ
Meteor অ্যাপ্লিকেশনের ফোল্ডার স্ট্রাকচার ডেভেলপারদের জন্য কোড ম্যানেজমেন্ট এবং কনফিগারেশন সহজ করে তোলে। এটি একক কোডবেসে ক্লায়েন্ট এবং সার্ভারের কাজ ভাগ করে রাখতে সহায়ক এবং অ্যাপ্লিকেশনটির স্কেলবিলিটি বাড়ায়।
Read more